home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Celestin Apprentice 5
/
Apprentice-Release5.iso
/
Source Code
/
Libraries
/
Dots & Pixels
/
headers
/
recorder.h
< prev
next >
Wrap
C/C++ Source or Header
|
1995-09-29
|
2KB
|
68 lines
#pragma once
class recorder: public general
{
//
// Some QuickTime 2.0 compression methods:
// 'rle ' run-length encoding = Apple animation
// 'smc ' Sean's secret recipe = Apple graphics, good for 8-bit images
// 'jpeg' JPEG
// 'rpza' Apple video
// 'raw ' no compression, unsupported by recorder 'StartSequence' and 'EndSequence'?
// 'cvid' CinePak, formerly called compact video
// 'kpcd' Kodak photo CD? (decompressor only?)
// 'yuv2' Y-U-V 4:2:2 encoding
//
// Some third-party compression methods:
//
// 'WRAW' Windows raw
// 'WRLE' Windows run-length encoding
// 'msvc' Micosoft Video compression
// 'font' Courier
//
public:
recorder( char *filename,
gworld *theWorld, // defines size of movie
long framerate = 20,
long compressiontype = 'smc ',
int keyframedistance = 0, // 0 implies no frame differencing
long compressionquality = 0x100, // 0x100 thru 0x300 allowed
long temporalquality = 0x100
);
~recorder();
void StartSequence();
void EndSequence();
void AddFrame( TimeValue duration = (TimeValue) 1);
private:
FSSpec myFSSpec;
Movie myMovie;
Track myTrack;
Media myMedia;
TimeValue sampTime;
ImageSequence mySequence;
int sequence_running;
long maxCompressedFrameSize;
ImageDescriptionHandle myImageDescriptionHandle;
Handle myFrameBitsHandle;
short myResFileNo;
gworld *myworld;
PixMapPtr thepix;
long myframerate;
long mycompressiontype;
long mycompressionquality;
long mytemporalquality;
int mykeyframedistance;
Rect movieFrame;
int movieDepth;
};